Java.time প্যাকেজ কি?

Java Technologies - জাভা টাইম প্যাকেজ (Java.time Package) - Java.time প্যাকেজের পরিচিতি
178

java.time প্যাকেজ হল Java 8 তে পরিচিত একটি নতুন API, যা তারিখ এবং সময় সম্পর্কিত কাজগুলোর জন্য আধুনিক, সঠিক এবং সহজ উপায় প্রদান করে। এটি পূর্ববর্তী java.util.Date, java.util.Calendar, এবং java.text.SimpleDateFormat এর চেয়ে আরও উন্নত এবং ব্যবহারকারী বান্ধব। java.time প্যাকেজটি ISO 8601 স্ট্যান্ডার্ড অনুসরণ করে এবং তারিখ, সময়, সময়ের পার্থক্য, জোনাল টাইম এবং আরও অনেক কিছু পরিচালনা করতে সক্ষম।

java.time প্যাকেজের প্রধান উপাদান:

  1. LocalDate:
    • LocalDate একটি নির্দিষ্ট তারিখ (যেমন: 2024-12-23) ধারণ করে, কিন্তু এটি সময় এবং সময় অঞ্চলের সাথে সম্পর্কিত নয়। এটি কেবল তারিখের মান (দিন, মাস, বছর) প্রতিনিধিত্ব করে।
    • উদাহরণ:

      import java.time.LocalDate;
      
      LocalDate date = LocalDate.now(); // বর্তমান তারিখ
      System.out.println(date); // আউটপুট: 2024-12-23
      
  2. LocalTime:
    • LocalTime একটি নির্দিষ্ট সময় (যেমন: 14:30:00) ধারণ করে, কিন্তু এটি তারিখ এবং সময় অঞ্চল সম্পর্কিত নয়।
    • উদাহরণ:

      import java.time.LocalTime;
      
      LocalTime time = LocalTime.now(); // বর্তমান সময়
      System.out.println(time); // আউটপুট: 14:30:00
      
  3. LocalDateTime:
    • LocalDateTime একটি নির্দিষ্ট তারিখ এবং সময় একসাথে ধারণ করে, কিন্তু এটি কোনো নির্দিষ্ট সময় অঞ্চল সম্পর্কিত নয়।
    • উদাহরণ:

      import java.time.LocalDateTime;
      
      LocalDateTime dateTime = LocalDateTime.now(); // বর্তমান তারিখ এবং সময়
      System.out.println(dateTime); // আউটপুট: 2024-12-23T14:30:00
      
  4. ZonedDateTime:
    • ZonedDateTime নির্দিষ্ট সময় অঞ্চল (Time Zone) সহ একটি তারিখ এবং সময় ধারণ করে। এটি UTC এবং অন্যান্য সময় অঞ্চলের মধ্যে সময় পার্থক্য পরিচালনা করতে পারে।
    • উদাহরণ:

      import java.time.ZonedDateTime;
      import java.time.ZoneId;
      
      ZonedDateTime zonedDateTime = ZonedDateTime.now(ZoneId.of("America/New_York"));
      System.out.println(zonedDateTime); // আউটপুট: 2024-12-23T09:30:00-05:00[America/New_York]
      
  5. Duration এবং Period:
    • Duration দুটি সময়ের মধ্যে পার্থক্য (সময়ের হিসাব) নির্ধারণ করতে ব্যবহৃত হয় (যেমন: ঘণ্টা, মিনিট, সেকেন্ড)।
    • Period দুটি তারিখের মধ্যে পার্থক্য নির্ধারণ করতে ব্যবহৃত হয় (যেমন: বছর, মাস, দিন)।
    • উদাহরণ:

      import java.time.Duration;
      import java.time.LocalTime;
      
      LocalTime startTime = LocalTime.of(9, 0);
      LocalTime endTime = LocalTime.of(17, 0);
      
      Duration duration = Duration.between(startTime, endTime);
      System.out.println(duration.toHours()); // আউটপুট: 8
      
  6. Instant:
    • Instant একটি নির্দিষ্ট সময় পয়েন্ট (যেমন Unix epoch time, 1970-01-01T00:00:00Z) ধারণ করে এবং এটি সময়ের একটি নির্দিষ্ট মুহূর্ত (সেকেন্ড এবং ন্যানোসেকেন্ডে) নির্ধারণ করে।
    • উদাহরণ:

      import java.time.Instant;
      
      Instant now = Instant.now();
      System.out.println(now); // আউটপুট: 2024-12-23T09:30:00.123456Z
      
  7. MonthDay, Year, YearMonth:
    • MonthDay: নির্দিষ্ট একটি মাস এবং দিনের তথ্য ধারণ করে, কিন্তু বছরের সঙ্গে সম্পর্কিত নয়।
    • Year: শুধুমাত্র একটি বছরের তথ্য ধারণ করে।
    • YearMonth: একটি বছরের সাথে মাসের তথ্য ধারণ করে।
    • উদাহরণ:

      import java.time.MonthDay;
      import java.time.Month;
      
      MonthDay monthDay = MonthDay.of(Month.DECEMBER, 25);
      System.out.println(monthDay); // আউটপুট: --12-25
      

java.time প্যাকেজের অন্যান্য সুবিধা:

  1. Immutability: java.time ক্লাসগুলো সাধারণত immutable, অর্থাৎ একবার তৈরি হলে তার মান পরিবর্তন করা যায় না। এটি কোডকে আরও নিরাপদ এবং সুবিধাজনক করে তোলে।
  2. Thread-Safety: java.time প্যাকেজের ক্লাসগুলো thread-safe, অর্থাৎ একাধিক থ্রেড একে অপরকে প্রভাবিত না করে একই অবজেক্টে কাজ করতে পারে।
  3. Time Zone Handling: ZonedDateTime ব্যবহার করে আপনি সময় অঞ্চল এবং বিশ্বজুড়ে সময় পার্থক্য সহজে পরিচালনা করতে পারবেন।
  4. Better Date and Time API: java.util.Date, java.util.Calendar, এবং java.text.SimpleDateFormat এর তুলনায় java.time আরও সঠিক, ব্যবহার সহজ এবং আন্তর্জাতিকীকরণ (localization) এর জন্য ভালো সমর্থন দেয়।
  5. ISO 8601 Standard: java.time ISO 8601 স্ট্যান্ডার্ড অনুসরণ করে, যা আন্তর্জাতিক সময় ফরম্যাট এবং মানকে সমর্থন করে।

java.time প্যাকেজ হলো Java এর জন্য একটি আধুনিক এবং শক্তিশালী Date and Time API। এটি Java 8 থেকে পরিচিত এবং ISO 8601 স্ট্যান্ডার্ড অনুসরণ করে। এটি বিভিন্ন ধরনের তারিখ, সময় এবং সময় অঞ্চল সম্পর্কিত কাজগুলি পরিচালনা করার জন্য অনেক সুবিধা প্রদান করে, যেমন LocalDate, LocalTime, ZonedDateTime, Duration, Period, ইত্যাদি। java.time প্যাকেজটি কোড লেখার সময় আরও সহজ, নিরাপদ এবং সঠিক উপায় প্রদান করে, বিশেষ করে যখন সময় এবং তারিখ সংক্রান্ত জটিল অপারেশন করতে হয়।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...